//
//  UUSingleAlertController.h
//  UUZuche
//
//  Created by phenmod on 13-4-12.
//

#import "UUSingleAlertController.h"
#import "JNAlertController.h"


@interface UUSingleAlertController ()

@property (nonatomic, strong) UUAlertController *alertController; // 对话框

@end

// =================================================================================================
// 全局对话框控制器
// =================================================================================================
static UUSingleAlertController *globalAlertController = nil;


@implementation UUSingleAlertController

// 获取AlertView控制器(单例，防止全局变量的使用)
+ (UUSingleAlertController *)getInstance
{
    @synchronized(self)
    {
        // 实例对象只分配一次
        if (globalAlertController == nil)
        {
            globalAlertController = [[super allocWithZone:NULL] init];

            // 初始化为nil
            [globalAlertController setAlertController:nil];
        }
    }

    return globalAlertController;
}

+ (id)allocWithZone:(NSZone *)zone
{
    return [self getInstance];
}

- (id)copyWithZone:(NSZone *)zone
{
    return self;
}

// 显示新的View
- (void)showNewAlertView:(UUAlertController *)alertControllerNew
{
    UUAlertController *alertViewCur = _alertController;
    if (alertViewCur != nil)
    {
        // TODO: dismiss
        // 取消代理 取消动作 消失
    }

    _alertController = alertControllerNew;
}

// 销毁
- (void)destroy
{
    _alertController = nil;
}

@end
